//priority 10000
global.ExplosionEvent = function (/**@type Internal.ExplosionEvent */event) {
    ExplosionEvent.Listeners.forEach(Listener=>{
        Listener(event)
    })
}
/**
 * @callback ExplosionEvent.Callback
 * @param {Internal.ExplosionEvent} event
 * @return {void}
*/
const ExplosionEvent = {
    Listeners:[],
    addListener:function(/**@type ExplosionEvent.Callback */callback){this.Listeners.push(callback)}
}

ExplosionEvent.addListener(event=>{
    if (event.explosion.exploder instanceof $WitherSkull) {
        event.setCanceled(true)
    }
})